home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 1.iso / ARGONET / PD / PROGRAMMING / DESKLIBC / SOURCES.ZIP / DeskLib / !DLSources / Libraries / Pane2 / DLL / MakeDLL < prev    next >
Text File  |  1995-08-23  |  4KB  |  152 lines

  1.  
  2. ObjectFiles    =        \
  3.             o.AddMain    \
  4.             o.AddPane    \
  5.             o.CAddMain    \
  6.             o.CAddPane    \
  7.             o.Delete    \
  8.             o.DeletePane    \
  9.             o.FindMain    \
  10.             o.FindPane    \
  11.             o.GetMHandle    \
  12.             o.GetPHandle    \
  13.             o.GetPNumber    \
  14.             o.Hide    \
  15.             o.OpenWindow    \
  16.             o.Pane2    \
  17.             o.PaneOpenH    \
  18.             o.ReadIcon    \
  19.             o.ReadVars    \
  20.             o.SetFlags    \
  21.             o.SetVars    \
  22.             o.Show    \
  23.  
  24.  
  25. LibName        =    Pane2
  26.  
  27.  
  28.  
  29. # Template makefile to make Straylight Dynamic Link 
  30. # Library from a DeskLib sublibrary's .o files
  31. #
  32. # The DLL is made in the directory 
  33. # '<DeskLib$Dir>.!DLLs.Freeware_1.DeskLib.'
  34. # and has the same name as the DeskLib sublibrary.
  35. #
  36. # Julian Smith 17 Apr 1995.
  37.  
  38. # The macro $(ObjectFiles) should be set at the 
  39. # start of this file, to be a space-separated
  40. # list of object files.
  41. # This is done by 'Makatic'.
  42.  
  43. # The macro $(LibName) should also be set at the 
  44. # start of this file, to be the name of the 
  45. # DeskLib sublibrary.
  46. # This is done by 'Makatic'.
  47.  
  48. # Note that this makefile doesn't use cc at all
  49. # - it merely links existing .o files.
  50.  
  51. # Linker flags, These can be anything. 
  52. # All flags required by Straylight (eg Link -rmf) 
  53. # are included in the $(LINK) macro.
  54. #
  55. LinkFlags    =    $(LinkExtra)
  56.  
  57.  
  58. # Macros for commands, including the Straylight
  59. # tool 'cdll'. Note that DRLink doesn't seem to
  60. # work with the SDLS.
  61. #
  62. LINK        =    Link -rmf
  63. CDLL        =    cdll
  64.  
  65.  
  66. # Filename of the thing we need to make: - the main
  67. # dynamically-linked library, which will go in the 
  68. # !DLL application.
  69. # NB The leafname of $(DLL_Lib) file (after copying into the !DLL
  70. # application) should be the same as the 'name' field in the
  71. # $(DLL_Def) file. In this case, this is $(LibName).
  72. DLL_Lib        =    <DeskLib$Dir>.!DLLs.Freeware_1.DeskLib.$(LibName)
  73.  
  74.  
  75. # Filenames of intermediate files needed to make $(DLL_Lib) and $(DLL_Stubs).
  76. #
  77. DLL_Header    =    Header
  78. DLL_Def        =    ^.DLLDef
  79. DLL_Stubs    =    Stubs
  80.  
  81.  
  82.  
  83. # -------------------------------------------------------
  84. # Everything below here should probably not be changed...
  85. # -------------------------------------------------------
  86.  
  87.  
  88. # Extra libs, written by Straylight, which always need to be linked into a DLL
  89. #
  90. SDLS_ExtraObjects=                    \
  91.             C:DLLLib.o.DLLLib        \
  92.             C:DLLLib.o.dstubs        \
  93.  
  94.  
  95. # Extra DeskLib libraries which need to be linked into the final DLL.
  96. # The DLL DeskLib library is included here because some DeskLib DLLs may
  97. # refer to other DeskLib DLLs.
  98. # Note that DeskLib:o.DLL contains all the DLL.o.* files except for 
  99. # the sublibraries for which there is a DLL - just the DLL Stubs file
  100. # is included for these.
  101. #
  102. DeskLib_ExtraObjects=                \
  103.             DeskLib:o.DLLDLL    \
  104.  
  105.  
  106.  
  107.  
  108. #Here's what we want to make...
  109.  
  110. All:    $(DLL_Lib)
  111.  
  112. $(DLL_Lib):    $(DeskLib_ExtraObjects) $(SDLS_ExtraObjects) $(DLL_Header) $(ObjectFiles)
  113.     $(LINK) $(LinkFlags) -o $@ $(ObjectFiles) $(DeskLib_ExtraObjects) $(SDLS_ExtraObjects) $(DLL_Header)
  114.  
  115.  
  116.  
  117. # Here's how to make the things which are needed in the above rules
  118.  
  119. $(DLL_Def):    
  120.     | Error: No DLL definition file exists.
  121.     |        You should run th MkStubsOs makefile
  122.     |        and then alter the template Def
  123.     |        file by hand.
  124.  
  125. $(DLL_Header):    $(DLL_Def)
  126.     $(CDLL) -def $(DLL_Def) -hdr $(DLL_Header)
  127.  
  128.  
  129. # Rule for compiling C source code for a Straylight dynamically-linked library.
  130. # Actually, we don't call cc - we complain and tell the user to run the 
  131. # MkStubsOs makefile.
  132.  
  133. VPATH = @.^
  134.  
  135. .SUFFIXES:    .o .c .s
  136. .c.o:
  137.     | $@ needs recompiling. This should be done by
  138.     | running the MkStubsOs or MkOs makefile before running
  139.     | this makefile.
  140.     |
  141.  
  142. .s.o:
  143.     | $@ needs assembling. This should be done by
  144.     | running the MkStubsOs or MkOs makefile before running
  145.     | this makefile.
  146.     |
  147.  
  148.  
  149.  
  150. # Dynamic dependencies:
  151.